package com.xnew.entity.memberArchives;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonInclude;
import org.springframework.data.annotation.Transient;

import java.io.Serializable;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
* @Author: Zhozh
* @Description: 会员档案管理-股东信息
* @DateTime: 2022/4/30
* @Params:
* @Return
*/

@TableName("t10_srhlr_info")
public class SrhlrInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
    * 股东信息编号
    */
    @TableId("srhlr_info_no")
    private String srhlrInfoNo;

    /**
    * 信息审核状态编号
    */
    private String infsubAuditStatusCode;

    /**
    * 出资方式编号
    */
    private String ivsmWayCode;

    /**
    * 机构用户编号
    */
    private String orgUserNo;

    /**
    * 币种编号 12
    */
    private String ccyTypeCode;

    /**
    * 地区编号
    */
    private String beltoRegiCode;

    /**
    * 股本性质编号 4
    */
    private String captChrcCode;

    /**
    * 股东类型编号
    */
    private String srhlrTypeCode;

    /**
    * 股东信息录入时间
    */
    private String infoInputTime;

    /**
    * 股东信息更新时间
    */
    private String srhlrInfoUpdateTime;

    /**
    * 股东名称 1
    */
    private String srhlrName;

    /**
    * 是否是控股股东
    */
    private String isCtrlSrhlrcCode;

    /**
    * 股本金额 2
    */
    private String captAmt;

    /**
    * 股本数
    */
    private String captQty;

    /**
    * 持股比例（%） 3
    */
    private String hdstkRatio;

    /**
    * 股东详细信息
    */
    private String srhlrDetailInfo;

    /**
    * 股东法人代表  5
    */
    private String srhlrLegalRepreName;

    /**
    * 股东信息备注 6
    */
    private String srhlrInfoRemark;

    /**
    * 股东办公电话 7
    */
    private String srhlrOfficeTel;

    /**
    * 股东移动电话 8
    */
    private String srhlrMob;

    /**
    * 股东电子邮件 9
    */
    private String srhlrEml;

    /**
    * 股东联系地址 10
    */
    private String srhlrContactAddr;

    /**
    * 股东邮政编码 11
    */
    private String srhlrZipCode;

    /**
    * 股东信息录入人
    */
    private String infoInputPsnNo;

    /**
    * 股东信息更新人
    */
    private String srhlrInfoUpdatePsnNo;

    /**
    * 是否是关闭状态（1：是 0：否）
    */
    private String isCloseStatus;

    /**
     * 审核日志
     */
    @TableField(exist = false)
    private List<AuditLog> auditLogList;

    @TableField(exist = false)
    private List<MemInfoChgHist> histList;


    public List<AuditLog> getAuditLogList() {
        return auditLogList;
    }

    public void setAuditLogList(List<AuditLog> auditLogList) {
        this.auditLogList = auditLogList;
    }


    public SrhlrInfo() {
    }

    public List<MemInfoChgHist> getHistList() {
        return histList;
    }

    public void setHistList(List<MemInfoChgHist> histList) {
        this.histList = histList;
    }

    public String getSrhlrInfoNo() {
        return srhlrInfoNo;
    }

    public void setSrhlrInfoNo(String srhlrInfoNo) {
        this.srhlrInfoNo = srhlrInfoNo;
    }

    public String getInfsubAuditStatusCode() {
        return infsubAuditStatusCode;
    }

    public void setInfsubAuditStatusCode(String infsubAuditStatusCode) {
        this.infsubAuditStatusCode = infsubAuditStatusCode;
    }

    public String getIvsmWayCode() {
        return ivsmWayCode;
    }

    public void setIvsmWayCode(String ivsmWayCode) {
        this.ivsmWayCode = ivsmWayCode;
    }

    public String getOrgUserNo() {
        return orgUserNo;
    }

    public void setOrgUserNo(String orgUserNo) {
        this.orgUserNo = orgUserNo;
    }

    public String getCcyTypeCode() {
        return ccyTypeCode;
    }

    public void setCcyTypeCode(String ccyTypeCode) {
        this.ccyTypeCode = ccyTypeCode;
    }

    public String getBeltoRegiCode() {
        return beltoRegiCode;
    }

    public void setBeltoRegiCode(String beltoRegiCode) {
        this.beltoRegiCode = beltoRegiCode;
    }

    public String getCaptChrcCode() {
        return captChrcCode;
    }

    public void setCaptChrcCode(String captChrcCode) {
        this.captChrcCode = captChrcCode;
    }

    public String getSrhlrTypeCode() {
        return srhlrTypeCode;
    }

    public void setSrhlrTypeCode(String srhlrTypeCode) {
        this.srhlrTypeCode = srhlrTypeCode;
    }

    public String getInfoInputTime() {
        return infoInputTime;
    }

    public void setInfoInputTime(String infoInputTime) {
        this.infoInputTime = infoInputTime;
    }

    public String getSrhlrInfoUpdateTime() {
        return srhlrInfoUpdateTime;
    }

    public void setSrhlrInfoUpdateTime(String srhlrInfoUpdateTime) {
        this.srhlrInfoUpdateTime = srhlrInfoUpdateTime;
    }

    public String getSrhlrName() {
        return srhlrName;
    }

    public void setSrhlrName(String srhlrName) {
        this.srhlrName = srhlrName;
    }

    public String getIsCtrlSrhlrcCode() {
        return isCtrlSrhlrcCode;
    }

    public void setIsCtrlSrhlrcCode(String isCtrlSrhlrcCode) {
        this.isCtrlSrhlrcCode = isCtrlSrhlrcCode;
    }

    public String getCaptAmt() {
        return captAmt;
    }

    public void setCaptAmt(String captAmt) {
        this.captAmt = captAmt;
    }

    public String getCaptQty() {
        return captQty;
    }

    public void setCaptQty(String captQty) {
        this.captQty = captQty;
    }

    public String getHdstkRatio() {
        return hdstkRatio;
    }

    public void setHdstkRatio(String hdstkRatio) {
        this.hdstkRatio = hdstkRatio;
    }

    public String getSrhlrDetailInfo() {
        return srhlrDetailInfo;
    }

    public void setSrhlrDetailInfo(String srhlrDetailInfo) {
        this.srhlrDetailInfo = srhlrDetailInfo;
    }

    public String getSrhlrLegalRepreName() {
        return srhlrLegalRepreName;
    }

    public void setSrhlrLegalRepreName(String srhlrLegalRepreName) {
        this.srhlrLegalRepreName = srhlrLegalRepreName;
    }

    public String getSrhlrInfoRemark() {
        return srhlrInfoRemark;
    }

    public void setSrhlrInfoRemark(String srhlrInfoRemark) {
        this.srhlrInfoRemark = srhlrInfoRemark;
    }

    public String getSrhlrOfficeTel() {
        return srhlrOfficeTel;
    }

    public void setSrhlrOfficeTel(String srhlrOfficeTel) {
        this.srhlrOfficeTel = srhlrOfficeTel;
    }

    public String getSrhlrMob() {
        return srhlrMob;
    }

    public void setSrhlrMob(String srhlrMob) {
        this.srhlrMob = srhlrMob;
    }

    public String getSrhlrEml() {
        return srhlrEml;
    }

    public void setSrhlrEml(String srhlrEml) {
        this.srhlrEml = srhlrEml;
    }

    public String getSrhlrContactAddr() {
        return srhlrContactAddr;
    }

    public void setSrhlrContactAddr(String srhlrContactAddr) {
        this.srhlrContactAddr = srhlrContactAddr;
    }

    public String getSrhlrZipCode() {
        return srhlrZipCode;
    }

    public void setSrhlrZipCode(String srhlrZipCode) {
        this.srhlrZipCode = srhlrZipCode;
    }

    public String getInfoInputPsnNo() {
        return infoInputPsnNo;
    }

    public void setInfoInputPsnNo(String infoInputPsnNo) {
        this.infoInputPsnNo = infoInputPsnNo;
    }

    public String getSrhlrInfoUpdatePsnNo() {
        return srhlrInfoUpdatePsnNo;
    }

    public void setSrhlrInfoUpdatePsnNo(String srhlrInfoUpdatePsnNo) {
        this.srhlrInfoUpdatePsnNo = srhlrInfoUpdatePsnNo;
    }

    public String getIsCloseStatus() {
        return isCloseStatus;
    }

    public void setIsCloseStatus(String isCloseStatus) {
        this.isCloseStatus = isCloseStatus;
    }

    @Transient
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @TableField(exist = false)
    private Map<String, Object> dictNameResult = new HashMap<String, Object>();

    public Map<String, Object> getDictNameResult() {
        return dictNameResult;
    }

    public void setDictNameResult(Map<String, Object> dictNameResult) {
        this.dictNameResult = dictNameResult;
    }

    //数据字典
    @Transient
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public String[] buildIncludeField(){
        return new String[]{"infsubAuditStatusCode","ivsmWayCode","ccyTypeCode","beltoRegiCode","captChrcCode","srhlrTypeCode","isCtrlSrhlrcCode","auditLogList"};
    }

    /*数据字典*/
    @Transient
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public String[] buildIncludeType(){
        return new String[]{"DG0149","DG0108","DG0107","DG0060","DG0118","DG0119","DG0104","LIST"};
    }
}